1. Field of the Invention
The present invention relates to a controller that controls both axis motion and machine sequences of a machine tool or industrial machine.
2. Description of the Related Art
The known controllers for controlling machine tools and industrial machines include numerical controllers and programmable controllers. These controllers perform motion control, in which axis motion is controlled, and sequence control, in which the machine's signals etc. are controlled, so as to operate the machine for various purposes.
To control a machine tool or industrial machine, both programs for motion control and programs for sequence control are created and executed, thereby operating the machine.
When a machine tool or the like is controlled by a numerical controller, the motion control programs that are generally used are NC programs coded in, for example, the EIA or ISO format; these programs may also include macro statements or the like.
Numerical controllers, programmable controllers, and the like are also used in motion controllers that control industrial machines; some of these controllers use NC programs, while others use a so-called motion language. Motion languages include languages based on the G codes used in NC programs, structural function chart (SFC) languages, and function block diagram (FBD) languages.
Sequence control programs are coded in languages such as a ladder diagram language, instruction list language, or SFC language.
Programmers were therefore burdened by the need for knowledge of a plurality of types of programming in order to create motion control and sequence control programs.
To reduce the programmer's burden, Japanese Patent Application Laid-Open No. 2002-73120 proposes a programming apparatus that converts motion language programs into a language such as ladder diagram language with code that is executed at fixed intervals.
In the technology described in the above patent application, a program created in motion language by using the programming apparatus is converted into ladder diagram language or another language for execution at fixed intervals, written into memory in the programming apparatus, and then written into a programmable controller. This procedure is followed because the programmable controller is unable to execute motion language programs; programs created in motion language by the programming apparatus cannot be executed until they have been converted into a language such as ladder diagram language. In this procedure, however, the user is hindered by having to perform a compilation process, and programs coded in motion language cannot be executed in real time.
Another problem is that in addition to the programmable controller, a specific apparatus for converting motion language into ladder diagram language or another language is needed, increasing the cost to the user.